home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Microsoft Graphics Studio: Home Publishing 99
/
[Microsoft Graphics Studio] Home Publishing 99 (Blue) Disk 2.iso
/
mhp
/
template
/
egp3076.mta
/
EGP3076.MTA
Wrap
Text File
|
1998-08-10
|
76KB
|
2,256 lines
MIME-Version: 1.0
Content-Type: multipart/related;
boundary="----=_NextPart_000_0A7F_01BDBEBB.400568A0";
type="multipart/alternative"
X-MMEditor: 00.00.02.1994,MinSave
X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3
This is a multi-part message in MIME format.
------=_NextPart_000_0A7F_01BDBEBB.400568A0
Content-Type: multipart/alternative;
boundary="----=_NextPart_001_0A80_01BDBEBB.400568A0"
------=_NextPart_001_0A80_01BDBEBB.400568A0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Your Message Here.
------=_NextPart_001_0A80_01BDBEBB.400568A0
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD W3 HTML//EN">
<HTML>
<HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META content=3D"MMEditor Version 00.00.02.1994,MinSave" =
name=3DGENERATOR>
<STYLE id=3DDocStyleSheet>.PreCreateRule {
POSITION: absolute
}
.DocClientData {
LEFT: 0px; OVERFLOW: hidden; POSITION: absolute; TOP: 20px; VISIBILITY: =
visible
}
.RuntimeScriptDiv {
LEFT: -3200px; POSITION: absolute; TOP: -3200px; VISIBILITY: hidden
}
.SoundElementsDiv {
LEFT: -3200px; POSITION: absolute; TOP: -3200px; VISIBILITY: hidden
}
.Sx7 {
HEIGHT: 301px; LEFT: 10px; OVERFLOW: hidden; POSITION: absolute; TOP: =
30px; VISIBILITY: hidden; WIDTH: 571px; Z-INDEX: 100
}
.PD8 {
BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; BORDER-RIGHT: 0px; BORDER-TOP: =
0px; HEIGHT: 300px; LEFT: 0px; POSITION: absolute; TOP: 0px; VISIBILITY: =
inherit; WIDTH: 570px; Z-INDEX: 50
}
.Ix9 {
BACKGROUND-COLOR: #ffffff; BACKGROUND-REPEAT: no-repeat; BORDER-BOTTOM: =
0px; BORDER-LEFT: 0px; BORDER-RIGHT: 0px; BORDER-TOP: 0px; LEFT: 0px; =
POSITION: absolute; TOP: 0px; VISIBILITY: inherit; Z-INDEX: 51
}
.PT10 {
BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; BORDER-RIGHT: 0px; BORDER-TOP: =
0px; HEIGHT: 224px; LEFT: 175px; PADDING-BOTTOM: 9px; PADDING-LEFT: 9px; =
PADDING-RIGHT: 9px; PADDING-TOP: 9px; POSITION: absolute; TEXT-ALIGN: =
left; TOP: 45px; VISIBILITY: hidden; WIDTH: 360px; Z-INDEX: 100
}
.Ix24 {
LEFT: 0px; POSITION: absolute; TOP: 0px; VISIBILITY: inherit; Z-INDEX: =
52
}
DIV {
FONT-FAMILY: Times New Roman
}
</STYLE>
<STYLE id=3DFontStyleSheet>@font-face {
font-family: Maiandra GD;
=
src:url(cid:0a7d01bdbef5$ec506a80$ed5d389d@superwonker.dns.microsoft.com)=
;
}
</STYLE>
</HEAD>
<BODY background=3D"" bgColor=3D#c0c0c0 leftMargin=3D0 topMargin=3D0>
<DIV class=3DPreCreateRule id=3DNavigationButtons style=3D"VISIBILITY: =
hidden">
<FORM name=3DNavigationButtonsForm><INPUT name=3DStart type=3Dbutton =
value=3D"Play >/Replay >"><INPUT name=3DBackward type=3Dbutton =
value=3D"Back <<"><INPUT name=3DForward type=3Dbutton value=3D"Forward =
>>"><INPUT name=3DWebpage type=3Dbutton value=3DAbout...><INPUT =
name=3DSceneStatus type=3Dbutton value=3D" Loading... "></FORM></DIV>=20
<DIV class=3DDocClientData id=3DDocClientData Themes =3D=20
" <AR|ARS1| =
<TT|TTa5|TTb0|TTc30835|TTd5|TTe0|TTf30836|TTg5|TTh0|TTi30837|>|>|"=20
lclJ =3D null lclFrench =3D null lclZ =3D 1 lclEnglish =3D 1 skuOE =3D =
null skuGWDelux =3D 1=20
skuGW =3D null KeyWords =3D null OutputStyle =3D "short page for brief =
message"=20
ProjectType =3D "multimedia greeting" AOPTable =3D=20
" <AR|ARS1| <AP|APa{guid =
{A3649D6E-5058-11CF-9E27-00AA00BBB8AF}}|APbGreetings Workshop|>|>|"=20
GW_NextID =3D 28>
<DIV class=3DSx7 id=3DSx7 PageEffect =3D=20
" <PE| <TR|TRa12|TRb2|TRc2|TRd1|TRe2|>|PEa0|PEb10|>|" SoundPaths =3D=20
" <AR|ARS1| <SN| =
<CP|CPa4A00000030300000000000000C000000000000640000C1000000A384F4D45435E4=
D4D4C5D41494E4C5A403037343333313E2D4944400FFFFDAED00000000000000000000000=
0000000000000000000000000300000400000003000008100000010000000FFFFFFFF0000=
0000FFFFFFFF99E7000042000000420000003300000006000000060000000000000081000=
0000000000000000000000000000000000070870000C3000000|CPbD:\soundDump\j0074=
331.mid|CPccid:038401bd9ae1$5e3cbd80$5c5a389d@emma2.dns.microsoft.com|CPd=
j0074331.mid|>|SNa0|SNb1|SNc1|SNd0|SNe0|>|>|"=20
PageName =3D PD8>
<DIV class=3DPD8 id=3DPD8 PageName =3D Ix24 CAGQueryIndx =3D 0 =
ClipPathInfo =3D=20
" =
<CP|CPa8C00000030300000000000000C00000000000064000052000000A384F4D4540525=
54D4C5D41494E4C584D4052544942523C5A403037333935303E274946400FFFFDAED00000=
000000000000000000000000000000000000000000002130303D0A0D7D0A0E205448302B7=
D0A09024F425445425D224F44545F4D4A302030787B30224F425445425D2C4546445A3020=
30787B30224F425445425D22594000000005B00000070002600500000000F0041000F0041=
00000000001000000000000000000000000000000000000000|CPbX:\v3Contnt\clipmed=
\mmclips\j730_739\j0073950.gif|CPccid:00a601bd8e4e$44b75220$5c5a389d@emma=
2.dns.microsoft.com|CPdj0073950.gif|>|"=20
PolyPath =3D=20
1,6,0.286865,137.319,0,300,570,300,570,0,0.286865,0,0.286865,137.319,0,0,=
=20
NoBackground =3D 0><IMG class=3DIx24 id=3DIx24=20
src=3D"cid:00a601bd8e4e$44b75220$5c5a389d@emma2.dns.microsoft.com"><IMG =
class=3DIx9=20
id=3DIx9 name=3DIx9=20
src=3D"cid:0a7701bdbef5$ec1c8940$ed5d389d@superwonker.dns.microsoft.com">=
=20
</DIV> =20
<DIV class=3DPT10 id=3DPT10 SoundPaths =3D " <AR|ARS0|>|" EntranceEffect =
=3D=20
" <EE| =
<TR|TRa7|TRb0|TRc2|TRd1|TRe2|>|EEa1|EEb0|EEc0|EEd100|EEf0|EEg1|>|">
<P><FONT color=3D#000000 face=3D"Maiandra GD" size=3D5> Your =
Message=20
Here.</FONT></P></DIV></DIV></DIV> =20
<DIV class=3DSoundElementsDiv id=3DSoundElementsDiv> <BGSOUND =
id=3DAW27 soundsrc=20
=3D cid:038401bd9ae1$5e3cbd80$5c5a389d@emma2.dns.microsoft.com> <IMG=20
src=3D""></DIV> =20
<DIV id=3DNavSoundElementsDiv> <EMBED hidden=3Dtrue id=3DAW27nav =
name=3DAW27nav=20
src=3Dcid:038401bd9ae1$5e3cbd80$5c5a389d@emma2.dns.microsoft.com =
autostart =3D no=20
MASTERSOUND></DIV>
<SCRIPT id=3DRuntimeScript language=3DJavaScript>
if ( navigator.appVersion.substring(0,1) < 4 )
alert("Sorry but your Web browser needs to be updated. You must have at =
least a version 4.0 browser to view this project.");
if ( navigator.appName !=3D "Netscape" ) =09
{ =09
document.body.background =3D ""; =09
for ( var ii=3D0; ii<document.all.length; ii++ ) =09
if ((document.all.item(ii).id).indexOf("Sx") !=3D -1) =09
document.all.item(ii).style.filter=3D"revealTrans(duration=3D0, =
transition=3D0)"; =09
} =09
var OBJ_SCENE =3D 0; =09
var OBJ_PLAYER =3D 1; =09
var PLAYER_IMAGE =3D 0; =09
var PLAYER_TEXT =3D 1; =09
var PLAYER_DRAW =3D 2; =09
var NAME_SCENE =3D "S" =09
var NAME_PLAYER =3D "P" =09
var PLAYER_NAME_IMAGE =3D "I" =09
var PLAYER_NAME_TEXT =3D "T"
var PLAYER_NAME_DRAW =3D "D"
var IE_VISIBLE =3D "visible";
var IE_HIDDEN =3D "hidden";
var IE_INHERIT =3D "inherit";
var NAV_VISIBLE =3D "show";
var NAV_HIDDEN =3D "hide";
var NAV_INHERIT =3D "inherit";
var DEFAULT_TICK_RATE =3D 100; =09
var DEFAULT_SCENE_DURATION =3D 10000;=09
var DEFAULT_PLAYER_DELAY =3D 0; =09
var TMR_PROJ =3D 0; =09
var TMR_SCENE =3D 1; =09
var RR_NONE =3D 0; =09
var RR_PAGE_BUTTONS =3D 1; =09
var RR_FULL_RUNTIME =3D 2; =09
var DUR_FOREVER =3D -1; =09
var DELAY_NONE =3D 0; =09
var DELAY_UNTIL_TRANSITION =3D -1; =09
var DELAY_UNTIL_TRIGGER =3D -2; =09
var DUR_UNTIL_DONE =3D -1; =09
var TT_ALL_MOUSE_EVENTS =3D 0; =09
var TT_BUTTONDOWN =3D 1; =09
var TT_BUTTONUP =3D 2; =09
var TT_MOUSEOVER =3D 3; =09
var TT_MOUSEOUT =3D 4; =09
var TB_PAGE_TURNER =3D -1; =09
var TB_START_PLAYER =3D -2; =09
var NULL_TRANSITION =3D -1;
var TEXT_FLYIN =3D 101;
var TEXT_TYPEWRITER =3D 102;
var FLYIN_TOP =3D 0;
var FLYIN_BOTTOM =3D 1;
var FLYIN_LEFT =3D 2;
var FLYIN_RIGHT =3D 3;
var FLYIN_ROTATE =3D 4;
var FLYIN_BY_LETTER =3D 1;
var FLYIN_BY_WORD =3D 2;
var FLYIN_BY_LINE =3D 3;
var FLYIN_PER_TICK =3D new Array (200, 160, 120, 80, 40); =09
var TRANSITION_RATES =3D new Array(1,2,3,4,5); =09
var PS_UNINITIALIZED =3D 0;
var PS_INITIALIZED =3D 1;
var PS_RUNNING =3D 2;
var PS_PAUSED =3D 3;
var PS_COMPLETE =3D 4;
var sceneArray =3D new Array();=09
var currentScene =3D null; =09
var nScenes =3D 0; =09
var stProjState =3D PS_UNINITIALIZED;=09
var stButtons =3D false; =09
var stNoInput =3D 0; =09
var strPause =3D new Array( "" );
var strPlay =3D new Array( "" );
var formStatus =3D null;
var tickTimer =3D null; =09
var sys =3D navigator.appName; =09
var vers =3D navigator.appVersion.substring(0,1); =09
var os =3D navigator.appVersion.indexOf("NT") >=3D 0 ? "NT" : "95";=09
var platform =3D navigator.platform; =09
window.onload =3D PreSetup;
window.onerror =3D Error;
function Error()
{
alert("There has been an unidentified error in this file's script. You =
may be able to fix this problem by refreshing your browser.");
return true;
}
function Project( tickRate, startScene, stopScene, rtReq, autoStart, =
delay, webpage )
{
this.tickRate =3D tickRate;
this.startScene =3D startScene;
this.stopScene =3D stopScene;
this.rtReq =3D rtReq;
this.autoStart =3D autoStart;
this.delay =3D delay;
this.webpage =3D webpage;
}
function PreSetup()
{
if ( (Project.delay !=3D null) && (Project.delay !=3D 0) ) =09
{
setTimeout( "Setup();", Project.delay*1000 );=20
return;
}
=09
Setup();
}
function Setup()=20
{ =20
stNoInput++; =09
if ( vers < 4 ) return; =09
if ( sys =3D=3D "Netscape" ) =09
{
document.all =3D new Array; =09
Extract(document); =09
=09
document.body =3D new Object;
document.body.clientWidth =3D window.innerWidth;
document.body.clientHeight =3D window.innerHeight;
document.body.scrollTop =3D window.pageXOffset;=20
document.body.scrollLeft =3D window.pageYOffset;
}
stButtons =3D SetupButtons(); =09
ProjectInitialize(); =09
stNoInput--; =09
if ( (stButtons =3D=3D false) || (Project.autoStart =3D=3D true) )=09
Start(); =09
}
function ProjectInitialize()
{
=09
tickTimer =3D new Timer();
=09
=09
InitializeScenes();
=09
tickTimer.StartTicking(); =09
=09
if ( Project.startScene =3D=3D null ) =09
Project.startScene =3D 0; =09
stProjState =3D PS_INITIALIZED; =09
=09
}
function ProjectStart( startScene )
{
stProjState =3D PS_RUNNING;
if ( startScene !=3D null )
ChangeScene( startScene );
else
ChangeScene( Project.startScene );
}
function ProjectComplete()
{
if ( Project.rtReq =3D=3D RR_PAGE_BUTTONS ) =09
return; =09
ProjectShutdown();
StatusChange(); =09
}
function ProjectShutdown()
{
KillTimer(); =09
StopEverythingOnScenes( false );
currentScene =3D null;
stProjState =3D PS_COMPLETE; =09
}
function Extract( obj )
{
=09
=09
for (var intLayer =3D 0; intLayer< obj.layers.length; intLayer++)=09
{
var el =3D obj.layers[intLayer]; =09
document.all[el.id] =3D new Object =09
var newEl =3D document.all[el.id]; =09
=09
newEl.id =3D el.id; =09
newEl.style =3D new Object; =09
newEl.style.pixelTop =3D parseInt(el.top);
newEl.style.pixelLeft =3D parseInt(el.left);
if (null!=3Del.clip)=20
{
newEl.offsetWidth =3D el.clip.width; =09
newEl.offsetHeight =3D el.clip.height
}
=09
if ( el.visibility =3D=3D NAV_HIDDEN )
newEl.style.visibility =3D IE_HIDDEN;
else if ( el.visibility =3D=3D NAV_VISIBLE )
newEl.style.visibility =3D IE_VISIBLE;
else if ( el.visibility =3D=3D NAV_INHERIT )
newEl.style.visibility =3D IE_INHERIT;
else
newEl.style.visibility =3D "";
=09
newEl.style.zIndex =3D el.zIndex;
newEl.style.backgroundColor =3D el.bgColor;
newEl.style.backgroundImage =3D "url("+el.background+")";
newEl.NSLayer =3D el; =09
=09
=09
=09
for (var intLoop =3D 0; intLoop< el.document.images.length; intLoop++)
{
var image =3D el.document.images[intLoop] =09
var imageName =3D image.name; =09
if ( imageName =3D=3D null ) =09
continue; =09
=09
document.all[imageName] =3D image; =09
document.images[imageName] =3D image; =09
}
=09
for (var intLoop =3D 0; intLoop< el.document.forms.length; intLoop++)=20
{
var form =3D el.document.forms[intLoop]; =09
var formName =3D form.name; =09
if ( formName =3D=3D null )
continue;
document.all[formName] =3D form; =09
document.forms[formName] =3D form; =09
=09
for ( var innerLoop =3D 0; innerLoop < form.elements.length; =
innerLoop++)
{
var element =3D form.elements[innerLoop]=09
var elementName =3D element.name;
if ( elementName =3D=3D null ) =09
continue;
document.all[elementName] =3D element;=09
}
}
if ( el.layers.length > 0 ) =09
Extract(el) =09
}
}
function Scene( duration )
{
this.duration =3D duration;
}
function InitializeScenes()
{
var objScene; =09
var sceneNumber =3D 0; =09
=09
for ( sceneName in Scenes )
{
objScene =3D Scenes[sceneName]; =09
objScene.number =3D parseInt(sceneNumber); =09
objScene.name =3D sceneName; =09
objScene.HTML =3D document.all[sceneName]; =09
SetVisibility( objScene.HTML, IE_HIDDEN );=09
if ( Project.rtReq =3D=3D RR_PAGE_BUTTONS ) =09
objScene.duration =3D DUR_FOREVER;
InitializePlayers( objScene ); =09
=09
if ( objScene.entryTrans =3D=3D null )
{
objScene.entryTrans =3D new Object();
objScene.entryTrans.type =3D NULL_TRANSITION;
}
=09
if ( objScene.Bhv !=3D null )
for ( var bhvIdx=3D0; (bhv=3DobjScene.Bhv[bhvIdx]) !=3D null; =
bhvIdx++ )=09
bhv.Initialize( objScene, bhv);
objScene.numBhv =3D bhvIdx; =09
sceneArray[sceneNumber++] =3D objScene;=09
}
nScenes =3D sceneNumber; =09
}
function StopEverythingOnScenes( fPause )
{
var objScene; =09
for ( sceneName in Scenes )
{
objScene =3D Scenes[sceneName]; =09
=09
=09
if ( objScene.Bhv !=3D null )
for ( var bhvIdx=3D0; (bhv=3DobjScene.Bhv[bhvIdx]) !=3D null; =
bhvIdx++ )=09
bhv.StopEverything( bhv, fPause );
StopEverythingOnPlayers( objScene, fPause ); =09
}
return;
}
function ChangeScene( nextSceneNumber )
{
var previousScene =3D currentScene; =09
StopSceneTimers(); =09
currentScene =3D GetSceneFromNumber( nextSceneNumber );=09
currentScene.previousScene =3D previousScene; =09
if ( currentScene.duration =3D=3D null ) =09
currentScene.duration =3D DEFAULT_SCENE_DURATION; =09
=09
if ( currentScene.Bhv !=3D null )
for ( var bhvIdx=3D0; bhvIdx<currentScene.numBhv; bhvIdx++ )=09
{
var bhv =3D currentScene.Bhv[bhvIdx]
if ( bhv =3D=3D null) =09
continue;
var delay =3D bhv.delay
if ( (delay =3D=3D null) || (delay =3D=3D DELAY_NONE) )=09
bhv.Start( bhv ); =09
else if ( delay > 0 ) =09
StartOneShotTimer( bhv, bhv.delay, bhv.Start, TMR_SCENE );
}
StartScenePlayers( currentScene ); =09
StartTransition( currentScene, currentScene.entryTrans, IE_VISIBLE, =
SceneTransitionDone );=09
=09
if ( currentScene.duration !=3D DUR_FOREVER ) =09
StartOneShotTimer( currentScene, currentScene.duration, SceneExit, =
TMR_SCENE );
StatusChange(); =09
return;
}
function SceneTransitionDone( objScene )
{
=09
=09
if ( currentScene.previousScene !=3D null )
SetVisibility( currentScene.previousScene.HTML, IE_HIDDEN );
=09
if ( currentScene.Bhv !=3D null )
for ( bhvIdx=3D0; bhvIdx<currentScene.numBhv; bhvIdx++ )=09
{
var bhv =3D currentScene.Bhv[bhvIdx]
if ( bhv =3D=3D null) =09
continue;
if ( bhv.delay =3D=3D DELAY_UNTIL_TRANSITION )=09
bhv.Start( bhv ); =09
}
=09
StartScenePlayersAfterTransition( currentScene );=09
}
function SceneExit( thisScene, nextScene )
{
var nextSceneNumber =3D nextScene =3D=3D null ? currentScene.number+1 : =
nextScene.number;
var finalScene =3D (nextSceneNumber <=3D Project.stopScene) ? false : =
true;
=09
=09
=09
for ( playerName in currentScene.Players )
{
objPlayer =3D currentScene.Players[playerName]; =09
PlayerExitTransitionDone( objPlayer, finalScene ); =09
}
=09
if ( currentScene.Bhv !=3D null )
for ( bhvIdx=3D0; bhvIdx<currentScene.numBhv; bhvIdx++ )=09
{
var bhv =3D currentScene.Bhv[bhvIdx]
if ( bhv =3D=3D null) =09
continue;
if ( bhv.duration =3D=3D DUR_UNTIL_DONE ) =09
bhv.Stop( bhv ); =09
}
=09
=09
if ( finalScene =3D=3D false ) =09
ChangeScene( nextSceneNumber ) =09
else
ProjectComplete() =09
=09
}
function Player( delay, duration )
{
this.delay =3D delay;
this.duration =3D duration;
}
function InitializePlayers( objScene )
{
var objPlayer; =09
var playerNumber =3D 0; =09
for ( playerName in objScene.Players )
{
objPlayer =3D objScene.Players[playerName]; =09
objPlayer.number =3D playerNumber; =09
objPlayer.name =3D playerName; =09
objPlayer.HTML =3D document.all[playerName]; =09
SetVisibility( objPlayer.HTML, IE_HIDDEN ); =09
objPlayer.position =3D new Position(objPlayer); =09
=09
if ( objPlayer.delay =3D=3D null ) =09
objPlayer.delay =3D DEFAULT_PLAYER_DELAY; =09
=09
=09
if ( objPlayer.entryTrans =3D=3D null )
{
objPlayer.entryTrans =3D new Object();
objPlayer.entryTrans.type =3D NULL_TRANSITION;
}=20
=09
else if ((objPlayer.entryTrans !=3D null) && =09
(GetPlayerTypeFromName(objPlayer.name) =3D=3D PLAYER_TEXT))
{
if ( (objPlayer.entryTrans.type =3D=3D TEXT_FLYIN) || =
(objPlayer.entryTrans.type =3D=3D TEXT_TYPEWRITER) )
if ( InitializeTextFlyin( objPlayer ) =3D=3D false )
objPlayer.entryTrans.type =3D null; =09
}
=09
if ( objPlayer.exitTrans =3D=3D null )
{
objPlayer.exitTrans =3D new Object();
objPlayer.exitTrans.type =3D NULL_TRANSITION;
}
=09
if ( objPlayer.Bhv !=3D null )
{
for ( bhvIdx=3D0; (bhv=3DobjPlayer.Bhv[bhvIdx]) !=3D null; bhvIdx++ ) =
bhv.Initialize( objPlayer, bhv);
objPlayer.numBhv =3D bhvIdx; =09
}
else
objPlayer.numBhv =3D 0;
playerNumber ++; =09
}=09
}
function StopEverythingOnPlayers( objScene, fPause )
{
var objPlayer; =09
for ( playerName in objScene.Players )
{
objPlayer =3D objScene.Players[playerName]; =09
=09
=09
if ( objPlayer.Bhv !=3D null )
{
for ( bhvIdx=3D0; (bhv=3DobjPlayer.Bhv[bhvIdx]) !=3D null; bhvIdx++ ) =
bhv.StopEverything( bhv, fPause );
}
DisableTrigger( objPlayer ); =09
}=09
return;
}
function StartScenePlayers( objScene )
{
=09
for ( playerName in objScene.Players )
{
objPlayer =3D objScene.Players[playerName]; =09
=09
=09
=09
if ( objPlayer.delay =3D=3D DELAY_NONE ) =09
StartPlayer( objPlayer ) =09
else if ( objPlayer.delay > 0 ) =09
StartOneShotTimer( objPlayer, objPlayer.delay, StartPlayer, =
TMR_SCENE);
}
}
function StartScenePlayersAfterTransition( objScene )
{
=09
for ( playerName in objScene.Players )
{
objPlayer =3D objScene.Players[playerName]; =09
if ( objPlayer.delay =3D=3D DELAY_UNTIL_TRANSITION )=09
StartPlayer( objPlayer ) =09
}
}
function StartPlayer( objPlayer )
{
=09
if ( objPlayer.Bhv !=3D null )
for ( bhvIdx=3D0; bhvIdx<objPlayer.numBhv; bhvIdx++ )=09
{
var bhv =3D objPlayer.Bhv[bhvIdx]
if ( bhv =3D=3D null) =09
continue;
var delay =3D bhv.delay
if ( (delay =3D=3D null) || (delay =3D=3D DELAY_NONE) )=09
bhv.Start( bhv ); =09
else if ( delay > 0 ) =09
StartOneShotTimer( bhv, bhv.delay, bhv.Start, TMR_SCENE );
}
=09
StartTransition( objPlayer, objPlayer.entryTrans, IE_VISIBLE, =
PlayerEntryTransitionDone );
=09
=09
if ( objPlayer.duration > 0 )
StartOneShotTimer( objPlayer, objPlayer.duration, PlayerExit, =
TMR_SCENE ); =09
}
function PlayerEntryTransitionDone( objPlayer )
{
=09
if ( objPlayer.Bhv !=3D null )
for ( bhvIdx=3D0; bhvIdx<objPlayer.numBhv; bhvIdx++ )=09
{
var bhv =3D objPlayer.Bhv[bhvIdx]
if ( bhv =3D=3D null) =09
continue;
if ( bhv.delay =3D=3D DELAY_UNTIL_TRANSITION )=09
bhv.Start( bhv ); =09
}
=09
if ( objPlayer.Triggers !=3D null )
EnableTrigger( objPlayer );
}
function PlayerExit( objPlayer )
{
=09
StartTransition( objPlayer, objPlayer.exitTrans, IE_HIDDEN, =
PlayerExitTransitionDone );
}
function PlayerExitTransitionDone( objPlayer, finalScene )
{
=09
if ( objPlayer.Bhv !=3D null )
for ( bhvIdx=3D0; bhvIdx<objPlayer.numBhv; bhvIdx++ )=09
{
var bhv =3D objPlayer.Bhv[bhvIdx]
if ( bhv =3D=3D null) =09
continue;
if ( bhv.duration =3D=3D DUR_UNTIL_DONE ) =09
bhv.Stop( bhv ); =09
}
=09
if ( (finalScene =3D=3D null) || (finalScene =3D=3D false) )
SetVisibility( objPlayer.HTML, IE_HIDDEN ); =09
=09
=09
=09
if ( (sys !=3D "Netscape") && (objPlayer.HTML.Preview !=3D null) )
SetVisibility( objPlayer.HTML, IE_VISIBLE );=20
return;
}
function Trigger( trigType, trigBhv, player, scene )
{
this.triggerType =3D trigType;
this.triggerBhv =3D trigBhv;
this.player =3D player;
this.nextSceneNum =3D scene;
}
function EnableTrigger( objPlayer )
{
if ( sys !=3D "Netscape" ) =09
{
objPlayer.HTML.style.cursor=3D"hand"; =09
for ( trx in objPlayer.Triggers ) =09
{
var trigger =3D objPlayer.Triggers[trx]; =09
if ( trigger.triggerType =3D=3D null )
trigger.triggerType =3D 0; =09
var tt =3D trigger.triggerType; =09
if ( tt =3D=3D TT_ALL_MOUSE_EVENTS ) =09
{
objPlayer.HTML.onmousedown =3D EventProcessor;
objPlayer.HTML.onmouseup =3D EventProcessor;=09
objPlayer.HTML.onmouseover =3D EventProcessor; =09
objPlayer.HTML.onmouseout =3D EventProcessor;
}
else if ( tt =3D=3D TT_BUTTONDOWN ) =09
objPlayer.HTML.onmousedown =3D EventProcessor;
else if ( tt =3D=3D TT_BUTTONUP ) =09
objPlayer.HTML.onmouseup =3D EventProcessor;
else if ( tt =3D=3D TT_MOUSEOVER ) =09
objPlayer.HTML.onmouseover =3D EventProcessor;
else if ( tt =3D=3D TT_MOUSEOUT ) =09
objPlayer.HTML.onmouseout =3D EventProcessor;
}
}
else =09
{
for ( trx in objPlayer.Triggers ) =09
{
var trigger =3D objPlayer.Triggers[trx];=09
if ( trigger.triggerType =3D=3D null )
trigger.triggerType =3D 0; =09
var tt =3D trigger.triggerType; =09
if ( tt=3D=3D 0 ) =09
{
objPlayer.HTML.NSLayer.captureEvents( Event.MOUSEUP | =
Event.MOUSEDOWN | Event.MOUSEOVER | Event.MOUSEOUT );
objPlayer.HTML.NSLayer.onMouseUp =3D EventProcessor;
objPlayer.HTML.NSLayer.onMouseDown =3D EventProcessor;
objPlayer.HTML.NSLayer.onMouseOver =3D EventProcessor;
objPlayer.HTML.NSLayer.onMouseOut =3D EventProcessor;
}
else if ( tt =3D=3D TT_BUTTONUP )
{
objPlayer.HTML.NSLayer.captureEvents(Event.MOUSEUP);
objPlayer.HTML.NSLayer.onMouseUp =3D EventProcessor;
}
else if ( tt =3D=3D TT_BUTTONDOWN )
{
objPlayer.HTML.NSLayer.captureEvents(Event.MOUSEDOWN);
objPlayer.HTML.NSLayer.onMouseDown =3D EventProcessor;
}
}
=09
}
}
function DisableTrigger( objPlayer )
{
if ( sys !=3D "Netscape" ) =09
{
objPlayer.HTML.onmousedown =3D null;
objPlayer.HTML.onmouseup =3D null;=09
objPlayer.HTML.onmouseover =3D null; =09
objPlayer.HTML.onmouseout =3D null;
}
else =09
objPlayer.HTML.NSLayer.releaseEvents(Event.MOUSEUP | Event.MOUSEDOWN | =
Event.MOUSEOVER | Event.MOUSEOUT );
}
function EventProcessor( e )
{
var trigger; =09
var type; =09
var button; =09
var eventType; =09
var objPlayer; =09
if ( (objPlayer =3D GetPlayerFromName(this.id)) =3D=3D null)=09
return;
if ( sys !=3D "Netscape" ) =09
{
type =3D event.type;
button =3D event.button;
}
else =09
{
type =3D e.type;
button =3D e.which;
}
=09
if (type =3D=3D "mousedown")
{
if ( button !=3D 1 ) =09
return;
eventType =3D TT_BUTTONDOWN;
if ( sys =3D=3D "Netscape" ) =09
{
objPlayer.HTML.NSLayer.releaseEvents(Event.MOUSEDOWN);
objPlayer.HTML.NSLayer.captureEvents(Event.MOUSEDOWN);
}
}
else if (type =3D=3D "mouseup")
{
if ( button !=3D 1 ) =09
return;
eventType =3D TT_BUTTONUP;
if ( sys =3D=3D "Netscape" ) =09
{
objPlayer.HTML.NSLayer.releaseEvents(Event.MOUSEUP);
objPlayer.HTML.NSLayer.captureEvents(Event.MOUSEUP);
}
}
else if (type =3D=3D "mouseover")
{
eventType =3D TT_MOUSEOVER;
}
else if (type =3D=3D "mouseout")
{
eventType =3D TT_MOUSEOUT;
}
var triggerArray =3D objPlayer.Triggers; =09
var trigger; =09
=09
for ( var trx=3D0; (trigger=3DtriggerArray[trx]) !=3D null; trx++ )
{
if ( (trigger.triggerType =3D=3D 0) || (trigger.triggerType =3D=3D =
eventType) )
{
=09
=09
=09
if ( trigger.triggerBhv =3D=3D TB_PAGE_TURNER )
{
=09
=09
if ( (trigger.nextSceneNum =3D=3D null) || (trigger.nextSceneNum =
=3D=3D "") )
SceneExit( currentScene );
else
{
if ( Scenes[trigger.nextSceneNum].number < currentScene.number )
{
for ( ii=3D0; ii<=3DcurrentScene.number; ii++ )
InitializePlayers( sceneArray[ii] );
}
SceneExit( currentScene, Scenes[trigger.nextSceneNum] );
}
}
else if ( trigger.triggerBhv =3D=3D TB_START_PLAYER )
StartPlayer( GetPlayerFromName( trigger.player ) ); =09
else=20
{
=09
var objTrigPlayer =3D GetPlayerFromName( trigger.player ); =09
var bhv =3D objTrigPlayer.Bhv[trigger.triggerBhv]; =09
bhv.Trigger( bhv, eventType ); =09
} =09
}
}
return;=09
}
function Transition( type, rate, flyFrom, flySubtype )
{
this.type =3D type;
this.rate =3D rate;
this.flyFrom =3D flyFrom;
this.flySubtype =3D flySubtype;
}
function StartTransition( transObj, trans, visibility, callback )
{
var playerType =3D GetObjectTypeFromName( transObj.name ); =09
=09
=09
=09
if ( ("Netscape" =3D=3D sys) ||=20
( (playerType =3D=3D OBJ_PLAYER) && (trans.type =3D=3D =
NULL_TRANSITION) ) )
{
SetVisibility( transObj.HTML, visibility );
callback( transObj );
return;
}
=09
=09
=09
=09
if ( ((trans.type =3D=3D TEXT_FLYIN) || (trans.type =3D=3D =
TEXT_TYPEWRITER)) && (visibility =3D=3D IE_VISIBLE) )
{
StartTextFlyin( transObj );
return;
}
=09
if ( platform !=3D "Win32" )
{
SetVisibility( transObj.HTML, visibility );
callback( transObj );
return;
}
=09
=09
=09
=09
=09
=09
if ( trans.type =3D=3D NULL_TRANSITION )
{
transObj.HTML.style.filter =3D "revealTrans(duration=3D0, =
transition=3D0)";
}
else =09
{
duration =3D TRANSITION_RATES[trans.rate];
transObj.HTML.style.filter =3D "revealTrans(duration=3D" + duration + =
", transition=3D" + trans.type + ")";
}
stNoInput++; =09
transObj.HTML.filters(0).Apply(); =09
=09
SetVisibility( transObj.HTML, visibility ); =09
=09
transObj.HTML.filters(0).Play() =09
transObj.HTML.onfilterchange =3D TransitionDoneEvent;=09
}
function TransitionDoneEvent( )
{
var type =3D GetObjectTypeFromName( event.srcElement.id ); =09
stNoInput--; =09
if ( type =3D=3D OBJ_SCENE )
{
=09
if ( (currentScene !=3D null) && (event.srcElement.id =3D=3D =
currentScene.name) )
SceneTransitionDone();
}
else if ( type =3D=3D OBJ_PLAYER ) =09
{
var objPlayer =3D GetPlayerFromName( event.srcElement.id );
if ( this.style.visibility =3D=3D IE_VISIBLE ) =09
PlayerEntryTransitionDone( objPlayer ); =20
else =09
PlayerExitTransitionDone( objPlayer, false );
}
return;
}
function InitializeTextFlyin( objPlayer )
{
if ( sys =3D=3D "Netscape" ) =09
return false;
var transition =3D objPlayer.entryTrans; =09
var transUnits =3D transition.flySubtype; =09
var movePerTick =3D parseInt(FLYIN_PER_TICK[transition.rate]);=09
=09
var transDirection =3D (transition.type =3D=3D TEXT_FLYIN) ? =
transition.flyFrom : FLYIN_TOP; =09
=09
=09
if ( stProjState =3D=3D PS_UNINITIALIZED )
{
var textHTML =3D objPlayer.HTML; =09
var oldInnerHTML =3D textHTML.innerHTML; =09
var newInnerHTML =3D ""; =09
=09
transition.textOrder =3D new Array(); =09
textOrder =3D transition.textOrder; =09
=09
=09
=09
=09
=09
var flyinIdx =3D 0; =09
var flyinBuffer =3D "";
=09
=09
=09
var spanStyle =3D (transition.type =3D=3D TEXT_FLYIN) ? " =
style=3D'position:relative;visibility:hidden;'" : " =
style=3D'visibility:hidden;'";
for ( var letterIdx=3D0; letterIdx<oldInnerHTML.length; )
{
=09
tempID =3D objPlayer.name+"_tempID"+flyinIdx.toString();
newInnerHTML +=3D "<span id=3D" + tempID + spanStyle + ">";
while ( letterIdx<oldInnerHTML.length )
{
=09
=09
=09
if ( ( (charNext =3D oldInnerHTML.substring(letterIdx, letterIdx+1)) =
=3D=3D "<") || (charNext =3D=3D "&") ) =09
{
if ( charNext =3D=3D "<" ) =09
endTagIdx =3D oldInnerHTML.indexOf( ">", letterIdx );=09
else
endTagIdx =3D oldInnerHTML.indexOf( ";", letterIdx );=09
var tagString =3D oldInnerHTML.substring( letterIdx, ++endTagIdx );
newInnerHTML +=3D tagString;
letterIdx =3D endTagIdx; =09
=09
if ( ((tagString =3D=3D "</P>") || (tagString =3D=3D "<BR>")) &&
(transUnits !=3D FLYIN_BY_LETTER) ) =09
break;
}
=09
else
{
thisChar =3D oldInnerHTML.substring( letterIdx, ++letterIdx );
newInnerHTML +=3D thisChar;
if ( transUnits =3D=3D FLYIN_BY_LETTER ) =09
break; =09
else if ( (transUnits =3D=3D FLYIN_BY_WORD ) && thisChar =3D=3D " " =
) =09
break;
}
}
newInnerHTML +=3D "</span>"
textOrder[flyinIdx] =3D new Object();
textOrder[flyinIdx].name =3D tempID; =09
flyinIdx++; =09
}
=09
if ( flyinIdx =3D=3D 0 )
return false;
=09
textHTML.innerHTML =3D newInnerHTML;
transition.numUnits =3D flyinIdx; =09
}
=09
=09
=09
textOrder =3D transition.textOrder;
var currentEl =3D document.all[textOrder[0].name]; =09
var currentOffset =3D currentEl.offsetLeft;=09
var previousEl, previousOffset;
for ( var count=3D0; count<transition.numUnits; count++ ) =09
{
previousOffset =3D currentOffset; =09
previousEl =3D currentEl;
textElName =3D textOrder[count].name; =09
currentEl =3D document.all[textElName];
SetVisibility( currentEl, IE_HIDDEN );
currentOffset =3D currentEl.offsetTop;
=09
=09
=09
=09
=09
=09
if ( currentOffset !=3D previousOffset ) =09
if ( previousEl.innerHTML =3D=3D " " ) =09
previousEl.innerHTML =3D "<br>";
if ( transDirection =3D=3D FLYIN_ROTATE ) =09
direction =3D count % FLYIN_ROTATE; =09
else
direction =3D transDirection;
=09
if ( direction =3D=3D FLYIN_LEFT )
{
tempPos =3D -(currentEl.offsetParent.offsetLeft + =
currentEl.offsetParent.offsetWidth);
currentEl.style.posLeft =3D tempPos; =09
textOrder[count].dx =3D -movePerTick; =09
textOrder[count].dy =3D 0;
textOrder[count].iterations =3D tempPos / (-movePerTick);=09
}
else if ( direction =3D=3D FLYIN_RIGHT )
{
tempPos =3D objPlayer.HTML.parentElement.offsetWidth - =
currentEl.offsetParent.offsetLeft;
currentEl.style.posLeft =3D tempPos;
textOrder[count].dx =3D movePerTick; =09
textOrder[count].dy =3D 0;
textOrder[count].iterations =3D tempPos / movePerTick;=09
}
else if ( direction =3D=3D FLYIN_TOP )
{
tempPos =3D -(currentEl.offsetParent.style.posTop + =
currentEl.offsetParent.offsetHeight);
currentEl.style.posTop =3D tempPos;
textOrder[count].dx =3D 0;
textOrder[count].dy =3D (-movePerTick); =09
textOrder[count].iterations =3D tempPos / (-movePerTick);=09
}
else if ( direction =3D=3D FLYIN_BOTTOM )
{
tempPos =3D objPlayer.HTML.parentElement.offsetHeight - =
currentEl.offsetParent.style.posTop;
currentEl.style.posTop =3D tempPos;
textOrder[count].dx =3D 0;
textOrder[count].dy =3D movePerTick; =09
textOrder[count].iterations =3D tempPos / movePerTick;=09
}
}
=09
transition.charIdx =3D 0; =09
transition.moveIdx =3D 0; =09
textElName =3D transition.textOrder[0].name;
transition.currentEl =3D document.all[textElName];=09
SetVisibility( transition.currentEl, IE_VISIBLE );
return true;
}
function StartTextFlyin( objPlayer )
{
=09
SetVisibility( objPlayer.HTML, IE_VISIBLE );
StartAnimationTimer( objPlayer, TextFlyinTick );
}
function TextFlyinTick( objPlayer )
{
var transition =3D objPlayer.entryTrans; =09
var spanObj =3D transition.textOrder[transition.charIdx]; =09
var textEl =3D transition.currentEl; =09
=09
=09
if ( ++transition.moveIdx < spanObj.iterations) =09
{
textEl.style.posTop -=3D spanObj.dy; =09
textEl.style.posLeft -=3D spanObj.dx;
return false; =09
}
=09
=09
textEl.style.posTop =3D 0; =09
textEl.style.posLeft =3D 0;
=09
=09
if ( (charIdx =3D ++transition.charIdx) >=3D =
transition.textOrder.length )=09
{
PlayerEntryTransitionDone( objPlayer ); =09
return true; =09
}
else
{
transition.moveIdx =3D 0; =09
textElName =3D transition.textOrder[charIdx].name;
transition.currentEl =3D document.all[textElName]; =09
transition.currentEl.style.visibility =3D IE_VISIBLE; =09
return false; =09
} =09
}
var SND_DUR_SCENE =3D -1;=09
var SND_DUR_PROJECT =3D 0;=09
var ST_WAV =3D 1;=09
var ST_MID =3D 2;=09
var NAV_EXT =3D "nav"=09
var MidiTag =3D null;=09
function Sound( delay, duration, loop, soundType, tagName, fileName )
{
=09
this.Initialize =3D InitializeSound;
this.Start =3D StartSound;
this.Trigger =3D StartSound;
this.Stop =3D StopSound;
this.StopEverything =3D StopEverythingOnSounds;
=09
this.delay =3D delay;
this.duration =3D duration;
this.loop =3D loop;
this.tagName =3D tagName;
this.fileName =3D fileName;
this.soundType =3D soundType;
}
function InitializeSound( objParent, objSound )
{
if ( sys =3D=3D "Netscape" )
{
objSound.navLoop =3D (objSound.loop =3D=3D -1) ? true : false;
objSound.html =3D document[objSound.tagName+NAV_EXT];
return;
}
objSound.objParent =3D objParent; =09
objSound.html =3D document.all[objSound.tagName];=09
objSound.fileName =3D objSound.html.soundsrc; =09
=09
=09
if (objSound.soundType =3D=3D ST_MID )
{
if ( MidiTag =3D=3D null ) =09
MidiTag =3D objSound.html; =09
else
objSound.html =3D MidiTag; =09
} =09
}
function StartSound( objSound )
{
if ( sys =3D=3D "Netscape" ) =09
{
if ( objSound.html !=3D null ) =09
objSound.html.play(objSound.navLoop);
return;
}
objSound.html.src =3D objSound.fileName; =09
objSound.html.loop =3D objSound.loop; =09
if ( objSound.soundType =3D=3D ST_WAV ) =09
objSound.html.volume =3D 0; =09
if ( objSound.duration > 0 )
StartOneShotTimer( objSound, objSound.duration, objSound.Stop, =
TMR_PROJ );
}
function StopSound( objSound, fPause )
{
if ( sys =3D=3D "Netscape" ) =09
{
if ( objSound.html !=3D null ) =09
objSound.html.stop();
return;
}
objSound.html.loop =3D 0;
objSound.html.src =3D ""; =09
if ( objSound.soundType =3D=3D ST_WAV )
objSound.html.volume =3D -10000;
}
function StopEverythingOnSounds( objSound )
{
StopSound( objSound, true );
if ( (sys !=3D "Netscape") && (os =3D=3D "NT") ) =09
objSound.html.volume =3D -500; =09
}
var SND_DUR_SCENE =3D -1;=09
var SND_DUR_PROJECT =3D 0;=09
function Swapper( idle, hover, click )
{
=09
this.Initialize =3D InitializeSwap;
this.Start =3D StartSwap;
this.Trigger =3D TriggerSwap;
this.Stop =3D StopSwap;
this.StopEverything =3D StopSwap;
=09
this.idle =3D idle;
this.hover =3D hover;
this.click =3D click;
}
function InitializeSwap( objParent, objSwap )
{
if ( stProjState !=3D PS_UNINITIALIZED ) =09
return;
=09
var idle =3D objSwap.idle; =09
var hover =3D objSwap.hover;
var click =3D objSwap.click;
=09
=09
=09
=09
=09
=09
=09
if ( (hover !=3D null) && (hover !=3D "") && (document.all[hover].src =
!=3D null) )
{
SetVisibility( document.all[hover], IE_HIDDEN );
objSwap.srcHover =3D document.all[hover].src;
document.all[hover].src =3D "";
}
else
objSwap.srcHover =3D document.all[idle].src;
if ( (click !=3D null) && (click !=3D "") && (document.all[click].src =
!=3D null) )
{
SetVisibility( document.all[click], IE_HIDDEN );
objSwap.srcClick =3D document.all[click].src;
document.all[click].src =3D "";
}
else
objSwap.srcClick =3D document.all[idle].src;
=09
objSwap.srcIdle =3D document.all[idle].src;
}
function StartSwap( objSwap )
{
=09
}
function TriggerSwap( objSwap, eventType )
{
if ( eventType =3D=3D TT_BUTTONDOWN )
document.all[objSwap.idle].src =3D objSwap.srcClick;
else if ( eventType =3D=3D TT_BUTTONUP )
document.all[objSwap.idle].src =3D objSwap.srcHover;
else if ( eventType =3D=3D TT_MOUSEOVER )
document.all[objSwap.idle].src =3D objSwap.srcHover;
else if ( eventType =3D=3D TT_MOUSEOUT )
document.all[objSwap.idle].src =3D objSwap.srcIdle;
return;
}
function StopSwap( objSwap, fPause )
{
if ( fPause ) =09
return;
}
var PATH_PER_TICK =3D new Array(50,40,30,20,10); =09
var PE_STOP =3D 0; =09
var PE_AGAIN =3D 1; =09
var PE_REV =3D 2; =09
var PE_EXIT =3D 3; =09
var PD_FWD =3D 1;
var PD_BACK =3D -1;
function Point( x, y, rate )
{
this.x =3D x;
this.y =3D y;
this.rate =3D rate;
}
function Paths( delay, edgeEffect )
{
=09
this.Initialize =3D InitializePathAnimation;
this.Start =3D StartPathAnimation;
this.Trigger =3D StartPathAnimation;
this.Stop =3D StopPathAnimation;
this.StopEverything =3D StopPathAnimation;
=09
this.delay =3D delay;
this.edgeEffect =3D edgeEffect;
}
function InitializePathAnimation( objPlayer, path )
{
var segment; =09
var pathIndex;
var totalDistance; =09
var distanceX; =09
var distanceY;
var dx; =09
var dy;
var travelTime; =09
var remX; =09
var remY;
=09
if ( stProjState !=3D PS_UNINITIALIZED )
{
objPlayer.position.SetPosition( path[0].x, path[0].y );
return;
}
path.objPlayer =3D objPlayer; =09
halfWidth =3D Math.floor(objPlayer.HTML.offsetWidth/2); =09
halfHeight =3D Math.floor(objPlayer.HTML.offsetHeight/2);
=09
=09
path[0].x -=3D halfWidth;
path[0].y -=3D halfHeight;
objPlayer.position.SetPosition( path[0].x, path[0].y );
for ( pathIndex=3D0; path[pathIndex+1] !=3D null; pathIndex++ )=09
{
px =3D parseInt(pathIndex); =09
segment =3D path[px]; =09
=09
=09
=09
path[px+1].x -=3D halfWidth;
path[px+1].y -=3D halfHeight;
=09
distanceX =3D path[px+1].x - segment.x; =09
distanceY =3D path[px+1].y - segment.y; =09
=09
totalDistance =3D Math.sqrt( (distanceX*distanceX) + =
(distanceY*distanceY) );
=09
=09
travelTime =3D Math.round(totalDistance / =
PATH_PER_TICK[segment.rate]);
=09
=09
if ( distanceX > 0 ) =09
dx =3D Math.floor( distanceX / travelTime );=09
else if ( distanceX < 0 ) =09
dx =3D Math.ceil( distanceX / travelTime );=09
else
dx =3D 0;
=09
=09
=09
=09
remX =3D distanceX % travelTime;
=09
if ( distanceY > 0 ) =09
dy =3D Math.floor( distanceY / travelTime );
else if ( distanceY < 0 )
dy =3D Math.ceil( distanceY / travelTime );
else
dy =3D 0;
remY =3D distanceY % travelTime;
segment.number =3D px; =09
segment.ticks =3D 0;
segment.travelTime =3D travelTime;
segment.dx =3D dx;
segment.dy =3D dy;
segment.remX =3D remX;
segment.remY =3D remY;
}
path.numSegs =3D parseInt(pathIndex); =09
path.dir =3D PD_FWD; =09
return;
}
function StartPathAnimation( path )
{
path.currentSegment =3D path[0]; =09
path.currentSegment.ticks =3D 0; =09
path.cntSegs =3D 0; =09
=09
=09
if ( path.dir =3D=3D PD_BACK ) =09
{
for ( var ii=3D0; ii<path.numSegs; ii++ ) =09
{
path[ii].dx *=3D -1;
path[ii].dy *=3D -1;
path[ii].remX *=3D -1;
path[ii].remY *=3D -1;
}
path.dir =3D PD_FWD; =09
}
StartAnimationTimer( path, PathAnimationTick );
}
function StopPathAnimation( path, fPause )
{
return;
}
function PathAnimationTick( path )
{
var objPlayer =3D path.objPlayer; =09
var segment =3D path.currentSegment; =09
var currentPosition =3D objPlayer.position;=09
if ( ++segment.ticks <=3D segment.travelTime ) =09
{
newX =3D currentPosition.x + segment.dx; =09
if ( segment.ticks <=3D Math.abs(segment.remX) )=09
segment.remX > 0 ? newX++ : newX--;
newY =3D currentPosition.y + segment.dy; =09
if ( segment.ticks <=3D Math.abs(segment.remY) )=09
segment.remY > 0 ? newY++ : newY--;
currentPosition.SetPosition( newX, newY );=09
return false; =09
}
=09
=09
if ( ++path.cntSegs < path.numSegs )
{
=09
path.currentSegment =3D path[segment.number+path.dir]; =09
path.currentSegment.ticks =3D 0; =09
=09
return false;
}
=09
=09
if ( path.edgeEffect =3D=3D PE_AGAIN ) =09
{
=09
objPlayer.position.SetPosition( path[0].x, path[0].y );
=09
path.currentSegment =3D path[0]; =09
path.currentSegment.ticks =3D 0; =09
path.cntSegs =3D 0; =09
return false; =09
} =09
else if ( path.edgeEffect =3D=3D PE_REV ) =09
{
path.dir *=3D -1; =09
=09
for ( var ii=3D0; ii<path.numSegs; ii++ )
{
path[ii].dx *=3D -1;
path[ii].dy *=3D -1;
path[ii].remX *=3D -1;
path[ii].remY *=3D -1;
}
path.currentSegment.ticks =3D 0; =09
path.cntSegs =3D 0; =09
return false;
}
else if ( path.edgeEffect =3D=3D PE_EXIT )
{
PlayerExit( objPlayer );
return true;
}
else
return true; =09
}
var GROW_PER_TICK =3D new Array(20,14,8,4,1); =09
function Size( zoom, rate )
{
this.zoom =3D zoom;
this.rate =3D rate;
}
function Grows( delay )
{
=09
this.Initialize =3D InitializeGrowAnimation;
this.Start =3D StartGrowAnimation;
this.Trigger =3D StartGrowAnimation;
this.Stop =3D StopGrowAnimation;
this.StopEverything =3D StopGrowAnimation;
=09
this.delay =3D delay;
}
function InitializeGrowAnimation( objPlayer, grow )
{
if ( sys =3D=3D "Netscape" )
return;
var child =3D objPlayer.HTML.children[0]; =09
var playerType =3D GetPlayerTypeFromName( objPlayer.name );=09
=09
=09
=09
if ( stProjState =3D=3D PS_UNINITIALIZED )
{
grow.realWidth =3D child.width;
grow.realHeight =3D child.height;
}
if ( (playerType =3D=3D PLAYER_TEXT) || sys =3D=3D "Netscape" )=09
{
grow =3D null; =09
return;
}
grow.objPlayer =3D objPlayer; =09
=09
grow.currentSegment =3D grow[0]; =09
grow.currentGrowth =3D grow.currentSegment.zoom; =09
=09
=09
=09
child.width *=3D (grow.currentSegment.zoom / 100); =09
child.height *=3D (grow.currentSegment.zoom / 100);
=09
for ( var growIndex=3D0; grow[growIndex] !=3D null; growIndex++ )=09
{
gx =3D parseInt(growIndex); =09
segment =3D grow[gx]; =09
if ( grow[gx+1] =3D=3D null ) =09
{
grow.finalSegment =3D grow[gx-1]; =09
break; =09
}
=09
growth =3D grow[gx+1].zoom - segment.zoom; =09
if ( growth >=3D 0 ) =09
growthFactor =3D GROW_PER_TICK[segment.rate]; =09
else
growthFactor =3D -(GROW_PER_TICK[segment.rate]);
=09
growthTicks =3D growth / growthFactor; =09
=09
segment.number =3D gx; =09
segment.growth =3D growth;
segment.growthFactor =3D growthFactor;
segment.growthTicks =3D growthTicks;
segment.currentTicks =3D 0;
}
}
function StartGrowAnimation( grow )
{=09
if ( sys =3D=3D "Netscape" )
return;
grow.currentSegment =3D grow[0]; =09
grow.currentTicks =3D 0;
StartAnimationTimer( grow, GrowAnimationTick );
}
function StopGrowAnimation( grow, fPause )
{
return;
}
function GrowAnimationTick( grow )
{
if ( sys =3D=3D "Netscape" )
return true; =09
var objPlayer =3D grow.objPlayer; =09
var child =3D objPlayer.HTML.children[0]; =09
var segment =3D grow.currentSegment; =09
grow.currentGrowth +=3D segment.growthFactor; =09
child.width =3D grow.realWidth*(grow.currentGrowth/100);=09
child.height =3D grow.realHeight*(grow.currentGrowth/100);
if ( ++grow.currentTicks <=3D segment.growthTicks ) =09
return false; =09
if ( grow.currentSegment =3D=3D grow.finalSegment ) =09
return true; =09
grow.currentSegment =3D grow[ segment.number+1 ]; =09
grow.currentTicks =3D 0;
return false; =09
}
function Timer()
{
if ( Project.tickRate =3D=3D null ) =09
this.tickRate =3D DEFAULT_TICK_RATE;
else
this.tickRate =3D Project.tickRate;
this.oneShots =3D new Array();
this.animations =3D new Array();
this.tickCounter =3D 0; =09
this.ticksPerSecond =3D 1000 / (this.tickRate);=09
this.timerID =3D null;
this.StartTicking =3D StartTicking; =09
this.StopTicking =3D StopTicking;
=09
}
function StartTicking()
{
if ( this.timerID =3D=3D null )
this.timerID =3D setInterval( "TimerTick()", this.tickRate );
}
function StopTicking()
{
if ( this.timerID !=3D null )
clearInterval( this.timerID );
this.timerID =3D null;
}
function TimerTick()
{
var timerEvent;
=09
for ( var ii=3D0; ii<tickTimer.animations.length; ii++ ) =09
{
if ( (timerEvent=3DtickTimer.animations[ii]) =3D=3D null )=09
continue; =09
if ( timerEvent.callback( timerEvent.callbackObj ) =3D=3D true )=09
tickTimer.animations[ii] =3D null; =09
}
=09
if ( (++tickTimer.tickCounter % tickTimer.ticksPerSecond) =3D=3D 0 )=09
{
=09
var length =3D tickTimer.oneShots.length; =09
for ( var ii=3D0; ii<length && (tickTimer!=3Dnull); ii++ )=09
{
if ( (timerEvent=3DtickTimer.oneShots[ii]) =3D=3D null )=09
continue; =09
=09
if ( timerEvent.time <=3D tickTimer.tickCounter ) =09
{
tickTimer.oneShots[ii] =3D null; =09
timerEvent.callback( timerEvent.callbackObj );=09
}
}
}
return;
}
function StartOneShotTimer( obj, time, callback, type )
{
var timerIndex; =09
var timerEvent =3D new Object(); =09
=09
timerEvent.callbackObj =3D obj; =09
timerEvent.callback =3D callback; =09
timerEvent.type =3D type; =09
=09
=09
timerEvent.time =3D tickTimer.tickCounter + (time * =
tickTimer.ticksPerSecond);
for ( timerIndex=3D0; tickTimer.oneShots[timerIndex]!=3Dnull; =
timerIndex++ );=09
tickTimer.oneShots[timerIndex] =3D timerEvent;=09
return;
}
function StartAnimationTimer( obj, callback )
{
var timerIndex;=20
timerEvent =3D new Object();
timerEvent.callbackObj =3D obj; =09
timerEvent.callback =3D callback; =09
for ( timerIndex=3D0; tickTimer.animations[timerIndex]!=3Dnull; =
timerIndex++);=09
tickTimer.animations[timerIndex] =3D timerEvent;
}
function StopSceneTimers()
{
for (var ii=3D0; ii<tickTimer.oneShots.length; ii++)=09
{
if ( tickTimer.oneShots[ii] =3D=3D null ) =09
continue;
if ( tickTimer.oneShots[ii].type =3D=3D TMR_SCENE )
tickTimer.oneShots[ii] =3D null; =09
}
=09
for (var ii=3D0; ii<tickTimer.animations.length; ii++)
tickTimer.animations[ii] =3D null;
}
=09
function KillTimer()
{
if ( tickTimer !=3D null ) =09
{
window.clearTimeout( tickTimer.timerID);=09
tickTimer =3D null; =09
}
}
function SetColor(el, color)=20
{
if ( el.style =3D=3D null ) =09
return;
=09
el.style.backgroundColor =3D color; =09
if ("Netscape"=3D=3Dsys)=20
el.NSLayer.bgColor =3D color; =09
}
function SetZIndex(el, zindex)=20
{
if ( el.style =3D=3D null ) =09
return;
=09
el.style.zIndex =3D zindex; =09
if ("Netscape"=3D=3Dsys)=20
el.NSLayer.zIndex =3D zindex =09
}
function SetVisibility(el, val)=20
{
if ( el.style =3D=3D null ) =09
return;
el.style.visibility =3D val; =09
=20
if ( "Netscape"=3D=3Dsys ) =09
{
if ( val =3D=3D IE_HIDDEN )
el.NSLayer.visibility =3D NAV_HIDDEN;
else if ( val =3D=3D IE_VISIBLE )
el.NSLayer.visibility =3D NAV_VISIBLE;
else if ( val =3D=3D IE_INHERIT )
el.NSLayer.visibility =3D NAV_INHERIT;
else
el.NSLayer.visibility =3D "";
}
}
function Position( obj )
{
this.object =3D obj; =09
this.x =3D obj.HTML.style.pixelLeft; =09
this.y =3D obj.HTML.style.pixelTop; =09
this.SetPosition =3D SetPosition;
}
function SetPosition( newX, newY )=20
{
var el =3D this.object.HTML; =09
if ( el.style =3D=3D null ) =09
return;
=09
el.style.pixelTop =3D newY; =09
el.style.pixelLeft =3D newX;
this.x =3D newX; =09
this.y =3D newY;
if ( "Netscape"=3D=3Dsys ) =09
{
el.NSLayer.top =3D parseInt( newY );
el.NSLayer.left =3D parseInt( newX );
el.offsetTop =3D el.NSLayer.top;
el.offsetLeft =3D el.NSLayer.left;
}
}
function SetContent(el, content)=20
{
if ( el.style =3D=3D null ) =09
return;
if ( "Netscape"=3D=3Dsys ) =09
{
el.NSLayer.document.open(); =09
el.NSLayer.document.write(content); =09
el.NSLayer.document.close(); =09
}
else =09
el.innerHTML=3Dcontent;
}
function SetupButtons()
{
var rtn =3D false; =09
if ( document.all.Pause !=3D null )
{
document.all.Pause.onclick =3D Pause;
strPause =3D document.all.Pause.value.split( '/' );
document.all.Pause.value =3D strPause[0];
}
if (document.all.Stop !=3D null )
document.all.Stop.onclick =3D Stop;
if ( document.all.Forward !=3D null )
document.all.Forward.onclick =3D Forward;
if ( document.all.Backward !=3D null )
document.all.Backward.onclick =3D Backward;
if ( document.all.Webpage !=3D null )
document.all.Webpage.onclick =3D GotoWebpage;
if ( document.all.SceneStatus !=3D null )
formStatus =3D document.all.SceneStatus;
if ( document.all.Start !=3D null )
{
document.all.Start.onclick =3D Start;
strPlay =3D document.all.Start.value.split( '/' );
document.all.Start.value =3D strPlay[0];
rtn =3D true;
}
else
rtn =3D false;
if ( document.all.NavigationButtons !=3D null )
SetVisibility( document.all.NavigationButtons, IE_VISIBLE );
return rtn;
}
function Start()
{
if ( stNoInput ) =09
return;
if ( stButtons =3D=3D true ) =09
{
document.all.Start.value =3D strPlay[1];
if ( document.all.Pause !=3D null )
{
document.all.Pause.value =3D strPause[0];
}
}
if ( (stProjState =3D=3D PS_RUNNING) || (stProjState =3D=3D =
PS_PAUSED) )=09
{
ProjectShutdown();
ProjectInitialize();
}
else if ( stProjState !=3D PS_INITIALIZED ) =09
ProjectInitialize();
ProjectStart(); =09
}
function Pause()
{
=09
if ( stProjState =3D=3D PS_PAUSED ) =09
{
tickTimer.StartTicking(); =09
if ( document.all.Pause !=3D null )
{
document.all.Pause.value =3D strPause[0];
}
stProjState =3D PS_RUNNING;
StatusChange(); =09
}
else
{
if ( tickTimer !=3D null ) =09
tickTimer.StopTicking(); =09
if ( stProjState !=3D PS_RUNNING ) =09
return;
stProjState =3D PS_PAUSED;
if ( document.all.Pause !=3D null )
{
document.all.Pause.value =3D strPause[1];
}
StopEverythingOnScenes( true ); =09
StatusChange(); =09
}
}
function Stop()
{
if ( stNoInput ) =09
return;
location.reload();
}
function Forward()
{
if ( stNoInput ) =09
return;
=09
if ( stProjState !=3D PS_RUNNING )
return;
SceneExit( currentScene ); =09
}
function Backward()
{
if ( stNoInput ) =09
return;
var nextScene;
=09
=09
=09
if ( stProjState =3D=3D PS_COMPLETE )
nextScene =3D Project.stopScene;
else if ( stProjState !=3D PS_RUNNING )
return;
else
nextScene =3D (currentScene.number =3D=3D 0) ? 0 : currentScene.number =
- 1;
ProjectShutdown();
ProjectInitialize();
ProjectStart( nextScene ); =09
}
function GotoWebpage()
{
window.open( Project.webpage); =09
}
function StatusChange( )
{
var stsPage =3D null; =09
var stsState =3D null; =09
if ( stProjState =3D=3D PS_UNINITIALIZED )
{
stsState =3D "Initializing";
stsPage =3D ""
}
else if ( stProjState =3D=3D PS_INITIALIZED )
{
stsState =3D "Ready";
stsPage =3D "";
}
else if ( stProjState =3D=3D PS_RUNNING )
{
stsState =3D "Playing";
stsPage =3D (currentScene.number+1) + " / " + nScenes;
}
else if ( stProjState =3D=3D PS_PAUSED )
stsState =3D "Paused";
else if ( stProjState =3D=3D PS_COMPLETE )
stsState =3D "Complete";
=09
if ( (formStatus !=3D null) && (stsPage !=3D null) )
formStatus.value =3D stsPage;
=09
if ( stsState !=3D null )
top.status =3D stsState;=20
}
function GetSceneFromNumber( sceneNum )
{
return sceneArray[sceneNum]; =09
}
function GetPlayerFromName( playerName )
{
var objPlayer;
=09
=09
if ( (currentScene) && (currentScene.Players !=3Dnull) && ((objPlayer =
=3D currentScene.Players[playerName]) !=3D null) ) =09
return objPlayer; =09
=09
var objScene;
for ( sceneName in Scenes ) =09
{
objScene =3D Scenes[sceneName];
if ( objScene.Players !=3D null )
{
objPlayer =3D objScene.Players[playerName];
if ( objPlayer !=3D null )
return objPlayer; =09
}
}=09
=09
return null; =09
}
function GetObjectTypeFromName( nameString )
{
var type =3D nameString.substr(0,1); =09
if ( type =3D=3D NAME_SCENE ) =09
return OBJ_SCENE;
else if ( type =3D=3D NAME_PLAYER ) =09
return OBJ_PLAYER;
}
function GetPlayerTypeFromName( nameString )
{
var type =3D nameString.substr(1,1); =09
if ( type =3D=3D PLAYER_NAME_IMAGE ) =09
return PLAYER_IMAGE;
else if ( type =3D=3D PLAYER_NAME_DRAW ) =09
return PLAYER_DRAW;
else if ( type =3D=3D PLAYER_NAME_TEXT ) =09
return PLAYER_TEXT;
}
function resetGifAnimation()
{
var temp =3D document.all["img1"].src;
document.all["img1"].src =3D temp;
}
Project =3D new Project(50, 0, 0, 2, 1, 0, =
"http://home-publishing.com/SKU/V3Pub.asp");
Scenes =3D new Object();
Scenes.Sx7 =3D new Scene( 10 );
Scenes.Sx7.entryTrans =3D new Transition( 14, 2, 0, 0 );
Scenes.Sx7.Bhv =3D new Array();
Scenes.Sx7.Bhv[0] =3D new Sound( 0, 0, -1, 2, "AW27", =
"cid:038401bd9ae1$5e3cbd80$5c5a389d@emma2.dns.microsoft.com" );
Scenes.Sx7.Players =3D new Object();
Scenes.Sx7.Players.PT10 =3D new Player( -1, -1 );
Scenes.Sx7.Players.PT10.entryTrans =3D new Transition( 12, 0, 0, 0 );
</SCRIPT>
</BODY></HTML>
------=_NextPart_001_0A80_01BDBEBB.400568A0--
------=_NextPart_000_0A7F_01BDBEBB.400568A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-ID: <00a601bd8e4e$44b75220$5c5a389d@emma2.dns.microsoft.com>
X-Content-Source: X:\v3Contnt\clipmed\mmclips\j730_739\j0073950.gif
X-Global-Moniker: :HOMEPREM\MAIN\HMPRDIR2\J0073950.GIF
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
eAYBADs=
------=_NextPart_000_0A7F_01BDBEBB.400568A0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-ID: <0a7701bdbef5$ec1c8940$ed5d389d@superwonker.dns.microsoft.com>
X-Content-Source: C:\TEMP\IMG465.GIF
R0lGODlhOwItAff/AP39/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP39/SH5BAEBAP8ALAAAAAA7Ai0B
QAiuAP8JHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuX
MGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOK
HUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5
suXLmDNrSN7MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx
48iTK1/OvLnz59CjS59Ovbr169izaznfzr279+/gw4sfT768+fPo06tfz769+/fw48ufT7++/fv4
8+vfz7+///8ABijggAQWaOCBCCao4II0DDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZo
4okopqjiiiy26OKLMMYo44w01i1o44045qjjjjz26OOPQAYp5JBEFmnkkUgmqeSSTDbp5JNQRinl
lFRWaeWVWGYpqeWWXHbp5ZdghinmmGSWaeaZaKap5ppstunmm3DGKeecdNZp55145qkn55589unn
n4AGKuighBZq6KGIJqrooow26uijkEYq6aSUVmrppZhmI6rpppx26umnoIYq6qiklmrqqaimquqq
rLbq6quwxirrrLTWImrrrbjmquuuvPbq66/ABivssMQWa+yxyCar7LLMNuvss9AfRivttNRWa+21
2Gar7bbcduvtt+CGK+645JZr7rnoph6r7rrstuvuu/DGK++89NZr77345qvvvvz26++/AAccLPDA
BBds8MEIJ6zwwgw37PDDEEcs8cQUV2zxxRsYZ6zxxhx37PHHIIcs8sgkl2zyySinrPLKLLca7PLL
MMcs88w012zzzTjnrPPOPPfs889ABy0M9NBEF2300UgnLW1AADs=
------=_NextPart_000_0A7F_01BDBEBB.400568A0
Content-Type: audio/midi
Content-Transfer-Encoding: 7bit
Content-ID: <038401bd9ae1$5e3cbd80$5c5a389d@emma2.dns.microsoft.com>
X-Content-Source: D:\soundDump\j0074331.mid
X-Global-Moniker: :HOMESNMM\MAIN\J0074331.MID
------=_NextPart_000_0A7F_01BDBEBB.400568A0
Content-Type: application/x-font
Content-Transfer-Encoding: 7bit
Content-ID: <0a7d01bdbef5$ec506a80$ed5d389d@superwonker.dns.microsoft.com>
X-Content-Source: Maiandra GD.eot
------=_NextPart_000_0A7F_01BDBEBB.400568A0--